@import '../helpers/mixin.scss';
@import './icon.scss';
@import './table-module/all.scss';
%DefaultColumnHeight{
	height :var(--vxe-ui-table-row-height-default);
}
%MediumColumnHeight{
	height :var(--vxe-ui-table-row-height-medium);
}
%SmallColumnHeight{
	height :var(--vxe-ui-table-row-height-small);
}
%MiniColumnHeight{
	height :var(--vxe-ui-table-row-height-mini);
}
.vxe-table-slots,
.vxe-table--file-form{
	display :none;
}
.vxe-table--print-frame{
	position :fixed;
	bottom   :-100%;
	left     :-100%;
	height   :0;
	width    :0;
	border   :0;
}
.vxe-table--render-wrapper{
	background-color :var(--vxe-ui-layout-background-color);
}
.vxe-table--body-wrapper{
	scroll-behavior :auto;
}
.vxe-table--body-wrapper,
.vxe-table--fixed-left-body-wrapper,
.vxe-table--fixed-right-body-wrapper{
	overflow-y :auto;
	overflow-x :auto;
	outline    :0;
}
/*默认的渲染*/
.vxe-cell,
.vxe-table--filter-template{
	.vxe-default-input,
	.vxe-default-textarea{
		background-color :var(--vxe-ui-layout-background-color);
	}
	.vxe-default-input,
	.vxe-default-textarea,
	.vxe-default-select{
		outline       :0;
		padding       :0 2px;
		width         :100%;
		color         :var(--vxe-ui-font-color);
		border-radius :var(--vxe-ui-border-radius);
		border        :1px solid var(--vxe-ui-input-border-color);
		&:focus{
			border :1px solid var(--vxe-ui-font-primary-color);
		}
		&[disabled]{
			cursor           :not-allowed;
			background-color :var(--vxe-ui-input-disabled-background-color);
		}
	}
	.vxe-default-input,
	.vxe-default-textarea,
	.vxe-default-select{
		height :var(--vxe-ui-input-height-default);
	}
	.vxe-default-input{
		&[type='date']::-webkit-inner-spin-button{
			margin-top :4px;
		}
		&[type='date']::-webkit-inner-spin-button,
		&[type='number']::-webkit-inner-spin-button{
			height :24px;
		}
		&::placeholder{
			color :var(--vxe-ui-input-placeholder-color);
		}
	}
	.vxe-default-textarea{
		resize         :none;
		vertical-align :middle;
		&:not([rows]){
			height :var(--vxe-ui-input-height-default);
		}
	}
	& > .vxe-input,
	& > .vxe-textarea,
	& > .vxe-select,
	& > .vxe-tree-select,
	& > .vxe-date-picker,
	& > .vxe-number-input,
	& > .vxe-ico-picker{
		width :100%;
	}
	& > .vxe-input > .vxe-input--inner,
	& > .vxe-textarea > .vxe-textarea--inner{
		padding :0 2px;
	}
	& > .vxe-textarea--inner,
	& > .vxe-default-textarea{
		resize :none;
	}
	& > .vxe-cell--tree-node{
		.vxe-input,
		.vxe-textarea,
		.vxe-select,
		.vxe-tree-select,
		.vxe-date-picker,
		.vxe-number-input,
		.vxe-ico-picker{
			width :100%;
		}
		.vxe-input > .vxe-input--inner,
		.vxe-textarea > .vxe-textarea--inner{
			padding :0 2px;
		}
		.vxe-textarea--inner,
		.vxe-default-textarea{
			resize :none;
		}
	}
}
.vxe-body--column{
	&.col--height{
		&.col--active{
			& > .vxe-cell{
				height :100%;
			}
		}
		& > .vxe-cell{
			& > .vxe-textarea,
			& > .vxe-default-textarea{
				height :100%;
			}
		}
	}
	.vxe-cell--label{
		&.is--textarea{
			white-space :pre-line;
		}
	}
}
.vxe-table--checkbox-range,
.vxe-table--cell-main-area,
.vxe-table--cell-extend-area,
.vxe-table--cell-active-area,
.vxe-table--cell-copy-area{
	display        :none;
	position       :absolute;
	pointer-events :none;
	z-index        :1;
}
.vxe-table--fixed-left-wrapper,
.vxe-table--fixed-right-wrapper{
	.vxe-table--checkbox-range,
	.vxe-table--cell-main-area,
	.vxe-table--cell-extend-area,
	.vxe-table--cell-active-area,
	.vxe-table--cell-copy-area{
		z-index :2;
	}
}
.vxe-table--fixed-left-wrapper{
	.vxe-table--cell-main-area,
	.vxe-table--cell-extend-area,
	.vxe-table--cell-active-area{
		&[half='1']{
			border-right :0;
		}
	}
	.vxe-table--cell-copy-area{
		&[half='1']{
			background-size :var(--vxe-ui-table-cell-copy-area-border-width) 12px, 0 12px, 12px var(--vxe-ui-table-cell-copy-area-border-width), 12px var(--vxe-ui-table-cell-copy-area-border-width);
		}
	}
}
.vxe-table--fixed-right-wrapper{
	.vxe-table--cell-main-area,
	.vxe-table--cell-extend-area,
	.vxe-table--cell-active-area{
		&[half='1']{
			border-left :0;
		}
	}
	.vxe-table--cell-copy-area{
		&[half='1']{
			background-size :0 12px, var(--vxe-ui-table-cell-copy-area-border-width) 12px, 12px var(--vxe-ui-table-cell-copy-area-border-width), 12px var(--vxe-ui-table-cell-copy-area-border-width);
		}
	}
}
/*复选框-范围选择*/
.vxe-table--checkbox-range{
	background-color :var(--vxe-ui-table-checkbox-range-background-color);
	border           :var(--vxe-ui-table-checkbox-range-border-width) solid var(--vxe-ui-table-checkbox-range-border-color);
}
.vxe-table--cell-area{
	height    :0;
	font-size :0;
	display   :none;
	& > .vxe-table--cell-main-area{
		background-color :var(--vxe-ui-table-cell-area-background-color);
		border           :var(--vxe-ui-table-cell-area-border-width) solid var(--vxe-ui-table-cell-area-border-color);
	}
	.vxe-table--cell-main-area-btn{
		display          :none;
		position         :absolute;
		right            :-1px;
		bottom           :-1px;
		width            :7px;
		height           :7px;
		border-style     :solid;
		border-color     :var(--vxe-ui-table-cell-main-area-extension-border-color);
		border-width     :1px 0 0 1px;
		background-color :var(--vxe-ui-table-cell-main-area-extension-background-color);
		pointer-events   :auto;
		cursor           :crosshair;
	}
	.vxe-table--cell-extend-area{
		border :var(--vxe-ui-table-cell-extend-area-border-width) solid var(--vxe-ui-table-cell-extend-area-border-color);
	}
}
@keyframes moveCopyCellBorder{
	from{
	}
	to{
		background-position :0 -12px, 100% 12px, 12px 0, -12px 100%;
	}
}
.vxe-table--cell-copy-area{
	background          :linear-gradient(0deg, transparent 6px, var(--vxe-ui-table-cell-copy-area-border-color) 6px) repeat-y,
	linear-gradient(0deg, transparent 50%, var(--vxe-ui-table-cell-copy-area-border-color) 0) repeat-y,
	linear-gradient(90deg, transparent 50%, var(--vxe-ui-table-cell-copy-area-border-color) 0) repeat-x,
	linear-gradient(90deg, transparent 50%, var(--vxe-ui-table-cell-copy-area-border-color) 0) repeat-x;
	background-size     :var(--vxe-ui-table-cell-copy-area-border-width) 12px, var(--vxe-ui-table-cell-copy-area-border-width) 12px, 12px var(--vxe-ui-table-cell-copy-area-border-width), 12px var(--vxe-ui-table-cell-copy-area-border-width);
	background-position :0 0, 100% 0, 0 0, 0 100%;
	animation           :moveCopyCellBorder .5s infinite linear;
}
.vxe-table--cell-active-area{
	border-color     :var(--vxe-ui-table-cell-active-area-border-color);
	border-style     :solid;
	border-width     :var(--vxe-ui-table-cell-active-area-border-width);
	background-color :var(--vxe-ui-table-cell-active-area-background-color);
}
.vxe-table--cell-multi-area{
	& > .vxe-table--cell-main-area{
		background-color :var(--vxe-ui-table-cell-area-background-color);
	}
}
/*圆角*/
.vxe-table--render-default{
	&.is--round{
		%AllRadius{
			border-radius :var(--vxe-ui-table-border-radius);
		}
		%TopRadius{
			border-radius :var(--vxe-ui-table-border-radius) var(--vxe-ui-table-border-radius) 0 0;
		}
		%TopLeftRadius{
			border-radius :var(--vxe-ui-table-border-radius) 0 0 0;
		}
		%TopRightRadius{
			border-radius :0 var(--vxe-ui-table-border-radius) 0 0;
		}
		%BottomRadius{
			border-radius :0 0 var(--vxe-ui-table-border-radius) var(--vxe-ui-table-border-radius);
		}
		%BottomLeftRadius{
			border-radius :0 0 0 var(--vxe-ui-table-border-radius);
		}
		%BottomRightRadius{
			border-radius :0 0 var(--vxe-ui-table-border-radius) 0;
		}
		@extend %AllRadius;
		.vxe-table--border-line{
			@extend %AllRadius;
		}
		&.is--header{
			&:not(.is--footer){
				.vxe-table--body-wrapper{
					&.fixed-left--wrapper{
						@extend %BottomLeftRadius;
					}
					&.body--wrapper{
						@extend %BottomRadius;
					}
					&.fixed-right--wrapper{
						@extend %BottomRightRadius;
					}
				}
			}
			.vxe-table--header-wrapper{
				&.fixed-left--wrapper{
					@extend %TopLeftRadius;
				}
				&.body--wrapper{
					@extend %TopRadius;
				}
				&.fixed-right--wrapper{
					@extend %TopRightRadius;
				}
			}
		}
		&:not(.is--header){
			&:not(.is--footer){
				.vxe-table--body-wrapper{
					&.body--wrapper{
						@extend %AllRadius;
					}
				}
			}
		}
		&.is--footer{
			&:not(.is--header){
				.vxe-table--body-wrapper{
					&.fixed-left--wrapper{
						@extend %BottomLeftRadius;
					}
					&.body--wrapper{
						@extend %TopRadius;
					}
					&.fixed-right--wrapper{
						@extend %BottomRightRadius;
					}
				}
			}
			.vxe-table--footer-wrapper{
				&.fixed-left--wrapper{
					@extend %BottomLeftRadius;
				}
				&.body--wrapper{
					@extend %BottomRadius;
				}
				&.fixed-right--wrapper{
					@extend %BottomRightRadius;
				}
			}
		}
	}
}
/*列宽*/
.vxe-table{
	&.column--calc{
		.vxe-header--column,
		.vxe-body--column,
		.vxe-footer--column{
			.vxe-cell{
				word-break  :break-all;
				white-space :nowrap;
			}
		}
	}
}
/*header*/
.vxe-table{
	.vxe-table--header-wrapper{
		color :var(--vxe-ui-table-header-font-color);
		.vxe-table--header-border-line{
			position      :absolute;
			left          :0;
			bottom        :0;
			height        :0;
			border-bottom :var(--vxe-ui-table-border-width) solid var(--vxe-ui-table-border-color);
		}
	}
	/*排序*/
	.vxe-cell--sort{
		text-align :center;
		position   :relative;
		padding    :0 0.1em 0 0.2em;
	}
	.vxe-cell--sort-vertical-layout{
		display        :inline-flex;
		flex-direction :column;
		height         :1.8em;
		vertical-align :middle;
		.vxe-sort--asc-btn,
		.vxe-sort--desc-btn{
			height :0.6em;
		}
	}
	.vxe-cell--sort-horizontal-layout{
		display        :inline-flex;
		flex-direction :row;
		.vxe-sort--asc-btn,
		.vxe-sort--desc-btn{
			width :0.5em;
		}
	}
	.vxe-sort--asc-btn,
	.vxe-sort--desc-btn{
		color  :var(--vxe-ui-table-column-icon-border-color);
		cursor :pointer;
		&:hover{
			color :var(--vxe-ui-font-color);
		}
		&.sort--active{
			color :var(--vxe-ui-font-primary-color);
		}
	}
}
.vxe-sort--asc-btn,
.vxe-sort--desc-btn,
.vxe-filter--btn{
	&:before,
	&:after{
		@include createAnimationTransition(border);
	}
}
.vxe-header--column{
	position    :relative;
	font-weight :var(--vxe-ui-table-header-font-weight);
	// user-select: none;
	&.col--ellipsis{
		& > .vxe-cell{
			display     :flex;
			align-items :center;
			.vxe-cell--title{
				overflow      :hidden;
				text-overflow :ellipsis;
				white-space   :nowrap;
			}
			& > i,
			& > span{
				&:not(.vxe-cell--title){
					flex-shrink :0;
				}
			}
		}
	}
	.vxe-cell--required-icon{
		display     :inline-block;
		color       :var(--vxe-ui-table-validate-error-color);
		width       :0.8em;
		height      :1em;
		line-height :1em;
		font-family :Verdana, Arial, Tahoma;
		font-weight :normal;
		position    :relative;
		&:before{
			content  :'*';
			position :absolute;
			left     :0;
			top      :0.2em;
		}
	}
	// .vxe-cell--required-icon,
	// .vxe-cell--edit-icon,
	// .vxe-cell-title-prefix-icon,
	// .vxe-cell-title-suffix-icon,
	// .vxe-cell--title {
	//   vertical-align: middle;
	// }
	.vxe-cell--required-icon{
		padding-right :0.1em;
	}
	.vxe-cell--edit-icon,
	.vxe-cell-title-prefix-icon,
	.vxe-cell-title-suffix-icon{
		padding :0.2em;
	}
	.vxe-cell-title-prefix-icon,
	.vxe-cell-title-suffix-icon{
		cursor :help;
	}
	.vxe-resizable{
		position   :absolute;
		right      :-7px;
		bottom     :0;
		width      :14px;
		height     :100%;
		text-align :center;
		z-index    :1;
		cursor     :col-resize;
		&.is--line{
			&:before,
			&:after{
				content        :'';
				display        :inline-block;
				vertical-align :middle;
			}
			&:before{
				width            :1px;
				height           :50%;
				background-color :var(--vxe-ui-table-resizable-line-color);
			}
			&:after{
				width  :0;
				height :100%;
			}
		}
	}
}
.vxe-table--fixed-right-wrapper{
	.vxe-header--column{
		.vxe-resizable{
			right :auto;
			left  :-7px;
		}
	}
}
/*table*/
.vxe-table--render-default{
	position    :relative;
	font-size   :var(--vxe-ui-font-size-default);
	color       :var(--vxe-ui-font-color);
	font-family :var(--vxe-ui-font-family);
	direction   :ltr;
	.vxe-table--body-wrapper{
		& > table{
			background-color :var(--vxe-ui-layout-background-color);
		}
	}
	.vxe-table--footer-wrapper{
		& > table{
			background-color :var(--vxe-ui-table-footer-background-color);
		}
	}
	.vxe-table--header,
	.vxe-table--body,
	.vxe-table--footer{
		border          :0;
		border-spacing  :0;
		border-collapse :separate;
		table-layout    :fixed;
	}
	.vxe-table--header-wrapper,
	.vxe-table--footer-wrapper{
		overflow-x :hidden;
		overflow-y :hidden;
		outline    :0;
	}
	&:not(.is--empty){
		&.is--footer{
			&.is--scroll-x{
				.vxe-table--body-wrapper{
					overflow-x :scroll;
					outline    :0;
				}
			}
		}
	}
	.vxe-body--row{
		&.row--stripe{
			background-color :var(--vxe-ui-table-row-striped-background-color);
		}
		&.row--radio{
			background-color :var(--vxe-ui-table-row-radio-checked-background-color);
		}
		&.row--checked{
			background-color :var(--vxe-ui-table-row-checkbox-checked-background-color);
		}
		&.row--current{
			background-color :var(--vxe-ui-table-row-current-background-color);
		}
		&.row--hover{
			background-color :var(--vxe-ui-table-row-hover-background-color);
			&.row--stripe{
				background-color :var(--vxe-ui-table-row-hover-striped-background-color);
			}
			&.row--radio{
				background-color :var(--vxe-ui-table-row-hover-radio-checked-background-color);
			}
			&.row--checked{
				background-color :var(--vxe-ui-table-row-hover-checkbox-checked-background-color);
			}
			&.row--current{
				background-color :var(--vxe-ui-table-row-hover-current-background-color);
			}
		}
	}
	// &.is--tree-line {
	//   .vxe-body--row {
	//     &.row--stripe {
	//       .vxe-tree--btn-wrapper {
	//         background-color: var(--vxe-ui-table-row-striped-background-color);
	//       }
	//     }
	//     &.row--radio {
	//       .vxe-tree--btn-wrapper {
	//         background-color: var(--vxe-ui-table-row-radio-checked-background-color);
	//       }
	//     }
	//     &.row--checked {
	//       .vxe-tree--btn-wrapper {
	//         background-color: var(--vxe-ui-table-row-checkbox-checked-background-color);
	//       }
	//     }
	//     &.row--current {
	//       .vxe-tree--btn-wrapper {
	//         background-color: var(--vxe-ui-table-row-current-background-color);
	//       }
	//     }
	//     &.row--hover {
	//       .vxe-tree--btn-wrapper {
	//         background-color: var(--vxe-ui-table-row-hover-background-color);
	//       }
	//       &.row--stripe {
	//         .vxe-tree--btn-wrapper {
	//           background-color: var(--vxe-ui-table-row-hover-striped-background-color);
	//         }
	//       }
	//       &.row--radio {
	//         .vxe-tree--btn-wrapper {
	//           background-color: var(--vxe-ui-table-row-hover-radio-checked-background-color);
	//         }
	//       }
	//       &.row--checked {
	//         .vxe-tree--btn-wrapper {
	//           background-color: var(--vxe-ui-table-row-hover-checkbox-checked-background-color);
	//         }
	//       }
	//       &.row--current {
	//         .vxe-tree--btn-wrapper {
	//           background-color: var(--vxe-ui-table-row-hover-current-background-color);
	//         }
	//       }
	//     }
	//   }
	// }
	&.drag--resize{
		.vxe-table--main-wrapper,
		.vxe-table--fixed-left-wrapper,
		.vxe-table--fixed-right-wrapper{
			*{
				cursor :col-resize;
			}
		}
	}
	&.drag--range,
	&.drag--area{
		.vxe-table--main-wrapper,
		.vxe-table--fixed-left-wrapper,
		.vxe-table--fixed-right-wrapper{
			*{
				cursor :default;
			}
		}
	}
	&.drag--extend-range{
		.vxe-table--main-wrapper,
		.vxe-table--fixed-left-wrapper,
		.vxe-table--fixed-right-wrapper{
			*{
				cursor :crosshair;
			}
		}
	}
	&.column--highlight{
		.vxe-header--column{
			&:not(.col--seq){
				&:hover{
					background-color :var(--vxe-ui-table-column-hover-background-color);
				}
			}
		}
	}
	&.cell--area{
		.vxe-table--body-wrapper,
		.vxe-body--column{
			user-select :none;
		}
	}
	&.drag--range{
		.vxe-body--column{
			user-select :none;
		}
	}
	&.checkbox--range{
		.vxe-body--column{
			&.col--checkbox{
				user-select :none;
			}
		}
	}
	&.is--padding{
		.vxe-body--column{
			&:not(.col--ellipsis){
				padding :var(--vxe-ui-table-column-padding-default);
			}
		}
	}
	.vxe-header--column,
	.vxe-footer--column{
		&:not(.col--ellipsis){
			padding :var(--vxe-ui-table-column-padding-default);
		}
	}
	.vxe-header--column,
	.vxe-body--column,
	.vxe-footer--column{
		position    :relative;
		line-height :var(--vxe-ui-table-row-line-height);
		text-align  :left;
		&.col--current{
			background-color :var(--vxe-ui-table-column-current-background-color);
			// .vxe-tree--btn-wrapper {
			//   background-color: var(--vxe-ui-table-column-current-background-color);
			// }
		}
		&.col--center{
			text-align :center;
		}
		&.col--right{
			text-align :right;
		}
	}
	// &.is--tree-line {
	//   .vxe-header--column,
	//   .vxe-body--column,
	//   .vxe-footer--column {
	//     &.col--current {
	//       .vxe-tree--btn-wrapper {
	//         background-color: var(--vxe-ui-table-column-current-background-color);
	//       }
	//     }
	//   }
	// }
	.vxe-header--column,
	.vxe-footer--column{
		&.col--ellipsis{
			&.col--center{
				.vxe-cell{
					justify-content :center;
				}
			}
			&.col--right{
				.vxe-cell{
					justify-content :flex-end;
				}
			}
		}
	}
	/*边框*/
	.vxe-table--footer-wrapper{
		border-top :var(--vxe-ui-table-border-width) solid var(--vxe-ui-table-border-color);
	}
	// &.border--default,
	// &.border--full,
	// &.border--inner,
	// &.border--outer {
	//   .vxe-body--row {
	//     &:last-child {
	//       & > .vxe-body--column {
	//         & > .vxe-cell {
	//           border-bottom: 1px solid transparent;
	//         }
	//       }
	//     }
	//   }
	//   .vxe-body--column {
	//     &:first-child {
	//       & > .vxe-cell {
	//         border-left: 1px solid transparent;
	//       }
	//     }
	//   }
	// }
	&.border--default,
	&.border--full,
	&.border--outer{
		.vxe-table--header-wrapper{
			background-color :var(--vxe-ui-table-header-background-color);
		}
	}
	&.border--default,
	&.border--inner{
		.vxe-header--column,
		.vxe-body--column,
		.vxe-footer--column{
			background-image    :linear-gradient(var(--vxe-ui-table-border-color), var(--vxe-ui-table-border-color));
			background-repeat   :no-repeat;
			background-size     :100% var(--vxe-ui-table-border-width);
			background-position :right bottom;
		}
	}
	&.border--full{
		.vxe-header--column,
		.vxe-body--column,
		.vxe-footer--column{
			background-image    :linear-gradient(var(--vxe-ui-table-border-color), var(--vxe-ui-table-border-color)), linear-gradient(var(--vxe-ui-table-border-color), var(--vxe-ui-table-border-color));
			background-repeat   :no-repeat;
			background-size     :var(--vxe-ui-table-border-width) 100%, 100% var(--vxe-ui-table-border-width);
			background-position :right top, right bottom;
		}
		.vxe-table--fixed-left-wrapper{
			// border-right: 1px solid var(--vxe-ui-table-border-color);
			.vxe-body--column{
				border-right-color :var(--vxe-ui-table-border-color);
			}
		}
	}
	&.border--default,
	&.border--full,
	&.border--outer,
	&.border--inner{
		.vxe-table--header-wrapper{
			.vxe-header--row{
				&:last-child{
					.vxe-header--gutter{
						background-image    :linear-gradient(var(--vxe-ui-table-border-color), var(--vxe-ui-table-border-color));
						background-repeat   :no-repeat;
						background-size     :100% var(--vxe-ui-table-border-width);
						background-position :right bottom;
					}
				}
			}
		}
	}
	&.border--inner,
	&.border--none{
		.vxe-table--header-wrapper{
			background-color :var(--vxe-ui-table-header-background-color);
		}
		.vxe-table--fixed-left-wrapper{
			border-right :0;
		}
	}
	&.border--inner{
		.vxe-table--border-line{
			border-width :0 0 1px 0;
		}
	}
	&.border--none{
		.vxe-table--border-line{
			display :none;
		}
		.vxe-table--header-border-line{
			display :none;
		}
	}
	&.size--medium{
		font-size :var(--vxe-ui-font-size-medium);
		.vxe-table--empty-placeholder,
		.vxe-table--empty-block{
			min-height :var(--vxe-ui-table-row-height-medium);
		}
		.vxe-header--column,
		.vxe-body--column,
		.vxe-footer--column{
			&:not(.col--ellipsis){
				padding :var(--vxe-ui-table-column-padding-medium);
			}
		}
		.vxe-cell{
			.vxe-default-input,
			.vxe-default-textarea,
			.vxe-default-select{
				height :var(--vxe-ui-input-height-medium);
			}
			.vxe-default-input{
				&[type='date']::-webkit-inner-spin-button{
					margin-top :3px;
				}
			}
		}
	}
	&.size--small{
		font-size :var(--vxe-ui-font-size-small);
		.vxe-table--empty-placeholder,
		.vxe-table--empty-block{
			min-height :var(--vxe-ui-table-row-height-small);
		}
		.vxe-header--column,
		.vxe-body--column,
		.vxe-footer--column{
			&:not(.col--ellipsis){
				padding :var(--vxe-ui-table-column-padding-small);
			}
		}
		.vxe-cell{
			.vxe-default-input,
			.vxe-default-textarea,
			.vxe-default-select{
				height :var(--vxe-ui-input-height-small);
			}
			.vxe-default-input{
				&[type='date']::-webkit-inner-spin-button{
					margin-top :2px;
				}
			}
		}
	}
	&.size--mini{
		font-size :var(--vxe-ui-font-size-mini);
		.vxe-table--empty-placeholder,
		.vxe-table--empty-block{
			min-height :var(--vxe-ui-table-row-height-mini);
		}
		.vxe-header--column,
		.vxe-body--column,
		.vxe-footer--column{
			&:not(.col--ellipsis){
				padding :var(--vxe-ui-table-column-padding-mini);
			}
		}
		.vxe-cell{
			.vxe-default-input,
			.vxe-default-textarea,
			.vxe-default-select{
				height :var(--vxe-ui-input-height-mini);
			}
			.vxe-default-input{
				&[type='date']::-webkit-inner-spin-button{
					margin-top :1px;
				}
			}
		}
	}
	&.is--padding{
		.vxe-cell{
			padding-left  :var(--vxe-ui-table-cell-padding-left);
			padding-right :var(--vxe-ui-table-cell-padding-right);
		}
	}
	.vxe-cell{
		white-space :pre-line;
		word-break  :break-all;
	}
	// 单元格占位符
	.vxe-cell--placeholder{
		color :var(--vxe-ui-table-cell-placeholder-color);
	}
	// 单选框和复选框
	.vxe-cell--radio{
		@include createRadioIcon();
	}
	.vxe-cell--checkbox{
		@include createCheckboxIcon();
	}
	.fixed--hidden{
		visibility :hidden;
	}
	.vxe-table--fixed-left-wrapper,
	.vxe-table--fixed-right-wrapper{
		width            :100%;
		position         :absolute;
		top              :0;
		z-index          :5;
		overflow         :hidden;
		background-color :inherit;
		transition       :0.3s box-shadow;
		outline          :0;
		.vxe-table--body-wrapper{
			overflow-x :hidden;
			outline    :0;
		}
	}
	.vxe-table--fixed-left-wrapper{
		.vxe-table--body-wrapper{
			width :calc(100% + 40px);
		}
	}
	&.is--header{
		.vxe-table--fixed-left-wrapper,
		.vxe-table--fixed-right-wrapper{
			.vxe-table--body-wrapper{
				&:before{
					display :none;
				}
			}
		}
	}
	.vxe-table--fixed-left-wrapper{
		left  :0;
		width :200px;
		&.scrolling--middle{
			box-shadow :var(--vxe-ui-table-fixed-left-scrolling-box-shadow);
		}
	}
	.vxe-table--fixed-right-wrapper{
		right :0;
		&.scrolling--middle{
			box-shadow :var(--vxe-ui-table-fixed-right-scrolling-box-shadow);
		}
	}
	.vxe-table--header-wrapper,
	.vxe-table--body-wrapper,
	.vxe-table--footer-wrapper{
		position :relative;
		&.fixed-left--wrapper,
		&.fixed-right--wrapper{
			position :absolute;
			top      :0;
			outline  :0;
		}
		&.fixed-left--wrapper{
			left :0;
		}
		&.fixed-right--wrapper{
			right      :0;
			overflow-y :auto;
		}
	}
	.vxe-body--x-space{
		width         :100%;
		height        :1px;
		margin-bottom :-1px;
	}
	.vxe-body--y-space{
		width :0;
		float :left;
	}
	/*列宽线*/
	.vxe-table--resizable-bar{
		display  :none;
		position :absolute;
		top      :0;
		left     :0;
		width    :1px;
		height   :100%;
		z-index  :9;
		cursor   :col-resize;
		&:before{
			content          :'';
			display          :block;
			height           :100%;
			background-color :var(--vxe-ui-table-resizable-drag-line-color);
		}
	}
	/*边框线*/
	.vxe-table--border-line{
		position       :absolute;
		top            :0;
		left           :0;
		width          :100%;
		height         :100%;
		z-index        :10;
		pointer-events :none;
		border         :var(--vxe-ui-table-border-width) solid var(--vxe-ui-table-border-color);
	}
	/*树形节点*/
	// &.is--tree-line {
	//   .vxe-body--row {
	//     &:first-child {
	//       .vxe-tree--line {
	//         border-width: 0 0 1px 0;
	//       }
	//     }
	//   }
	//   .vxe-body--row {
	//     .vxe-body--column {
	//       background-image: none;
	//     }
	//   }
	// }
	.vxe-tree--line-wrapper{
		position :relative;
		display  :block;
		height   :0;
	}
	.vxe-tree--line{
		content        :'';
		position       :absolute;
		bottom         :-0.9em;
		width          :0.8em;
		border-width   :0 0 1px 1px;
		border-style   :var(--vxe-ui-table-tree-node-line-style);
		border-color   :var(--vxe-ui-table-tree-node-line-color);
		pointer-events :none;
	}
	.vxe-cell--tree-node{
		position :relative;
	}
	.vxe-tree--btn-wrapper{
		position    :absolute;
		top         :50%;
		width       :1em;
		height      :1em;
		text-align  :center;
		transform   :translateY(-50%);
		// background-color: var(--vxe-ui-layout-background-color);
		z-index     :1;
		user-select :none;
		cursor      :pointer;
	}
	.vxe-tree--node-btn{
		display :block;
		color   :var(--vxe-ui-font-lighten-color);
		@include createAnimationTransition(transform);
		&:hover{
			color :var(--vxe-ui-font-color);
		}
	}
	.vxe-tree-cell{
		display      :block;
		padding-left :1.5em;
	}
	.vxe-body--column{
		&.col--ellipsis{
			& > .vxe-cell{
				.vxe-tree-cell{
					overflow      :hidden;
					text-overflow :ellipsis;
					white-space   :nowrap;
				}
			}
		}
	}
	/*展开行*/
	.vxe-table--expanded{
		cursor :pointer;
		.vxe-table--expand-btn{
			display     :inline-block;
			width       :1em;
			height      :1em;
			text-align  :center;
			user-select :none;
			color       :var(--vxe-ui-font-lighten-color);
			@include createAnimationTransition(transform);
			&:hover{
				color :var(--vxe-ui-font-color);
			}
		}
		& + .vxe-table--expand-label{
			padding-left :0.5em;
		}
	}
	.vxe-body--expanded-row{
		&.is--padding{
			& > .vxe-body--expanded-column{
				& > .vxe-body--expanded-cell{
					padding :var(--vxe-ui-table-expand-padding-default);
				}
			}
		}
	}
	.vxe-body--expanded-column{
		border-bottom :var(--vxe-ui-table-border-width) solid var(--vxe-ui-table-border-color);
		border-right  :var(--vxe-ui-table-border-width) solid var(--vxe-ui-table-border-color);
		&.col--ellipsis{
			& > .vxe-body--expanded-cell{
				overflow      :hidden;
				text-overflow :ellipsis;
				white-space   :nowrap;
			}
		}
	}
	.vxe-body--expanded-cell{
		position :relative;
		z-index  :1;
		&.is--ellipsis{
			overflow :auto;
			outline  :0;
		}
	}
	/*设置列高度*/
	&.vxe-editable{
		.vxe-body--column{
			@extend %DefaultColumnHeight;
		}
		&.size--medium{
			.vxe-body--column{
				@extend %MediumColumnHeight;
			}
		}
		&.size--small{
			.vxe-body--column{
				@extend %SmallColumnHeight;
			}
		}
		&.size--mini{
			.vxe-body--column{
				@extend %MiniColumnHeight;
			}
		}
	}
	/*溢出列*/
	.vxe-header--column,
	.vxe-body--column,
	.vxe-footer--column{
		&.col--ellipsis{
			@extend %DefaultColumnHeight;
			&:not(.col--active){
				& > .vxe-cell{
					overflow      :hidden;
					text-overflow :ellipsis;
					white-space   :nowrap;
				}
			}
			&:not(.col--height){
				& > .vxe-cell{
					max-height :var(--vxe-ui-table-row-height-default);
				}
			}
		}
	}
	&.size--medium{
		.vxe-header--column,
		.vxe-body--column,
		.vxe-footer--column{
			&.col--ellipsis{
				@extend %MediumColumnHeight;
				&:not(.col--height){
					& > .vxe-cell{
						max-height :var(--vxe-ui-table-row-height-medium);
					}
				}
			}
		}
		.vxe-cell--checkbox{
			font-size :var(--vxe-checkbox-font-size-medium);
		}
		.vxe-cell--radio{
			font-size :var(--vxe-radio-font-size-medium);
		}
	}
	&.size--small{
		.vxe-header--column,
		.vxe-body--column,
		.vxe-footer--column{
			&.col--ellipsis{
				@extend %SmallColumnHeight;
				&:not(.col--height){
					& > .vxe-cell{
						max-height :var(--vxe-ui-table-row-height-small);
					}
				}
			}
		}
		.vxe-cell--checkbox{
			font-size :var(--vxe-checkbox-font-size-small);
		}
		.vxe-cell--radio{
			font-size :var(--vxe-radio-font-size-small);
		}
	}
	&.size--mini{
		.vxe-header--column,
		.vxe-body--column,
		.vxe-footer--column{
			&.col--ellipsis{
				@extend %MiniColumnHeight;
				&:not(.col--height){
					& > .vxe-cell{
						max-height :var(--vxe-ui-table-row-height-mini);
					}
				}
			}
		}
		.vxe-cell--checkbox{
			font-size :var(--vxe-checkbox-font-size-mini);
		}
		.vxe-cell--radio{
			font-size :var(--vxe-radio-font-size-mini);
		}
	}
	/*暂无数据*/
	.vxe-table--empty-placeholder,
	.vxe-table--empty-block{
		color           :var(--vxe-ui-input-placeholder-color);
		min-height      :var(--vxe-ui-table-row-height-default);
		justify-content :center;
		align-items     :center;
		text-align      :center;
		overflow        :hidden;
		width           :100%;
		pointer-events  :none;
		outline         :0;
	}
	.vxe-table--empty-block{
		display    :none;
		visibility :hidden;
	}
	.vxe-table--empty-placeholder{
		display  :none;
		position :absolute;
		top      :0;
		z-index  :5;
	}
	.vxe-table--empty-content{
		display        :block;
		width          :50%;
		pointer-events :auto;
	}
	&.is--empty{
		.vxe-table--empty-block,
		.vxe-table--empty-placeholder{
			display :flex;
		}
	}
	.vxe-body--column{
		&.col--selected{
			box-shadow :inset 0px 0px 0px 2px var(--vxe-ui-font-primary-color);
		}
	}
	/*校验不通过*/
	.vxe-body--column{
		&.col--active,
		&.col--selected{
			position :relative;
		}
		&.col--valid-error{
			.vxe-cell--valid-error-hint{
				width         :100%;
				position      :absolute;
				left          :50%;
				font-size     :12px;
				line-height   :1.2em;
				transform     :translateX(-50%);
				text-align    :left;
				z-index       :4;
				padding-left  :var(--vxe-ui-table-cell-padding-left);
				padding-right :var(--vxe-ui-table-cell-padding-right);
				.vxe-cell--valid-error-msg{
					display          :inline-block;
					border-radius    :var(--vxe-ui-border-radius);
					color            :var(--vxe-ui-table-validate-error-color);
					background-color :var(--vxe-ui-table-validate-error-background-color);
					pointer-events   :auto;
				}
			}
			.vxe-default-input,
			.vxe-default-textarea,
			.vxe-default-select{
				border-color :var(--vxe-ui-table-validate-error-color);
			}
			.vxe-input,
			.vxe-ico-picker{
				border-color :var(--vxe-ui-table-validate-error-color);
			}
		}
	}
	&.valid-msg--single{
		.vxe-body--row{
			&:last-child{
				.vxe-cell--valid-error-hint{
					bottom :calc(100%);
				}
				&:first-child{
					.vxe-cell--valid-error-hint{
						bottom :auto;
					}
				}
			}
		}
	}
	&.valid-msg--full{
		.vxe-body--row{
			&:last-child{
				.vxe-cell--valid-error-hint{
					top :calc(100% - 1.3em);
				}
			}
		}
	}
	/*已废弃，旧的校验样式**/
	&.old-cell-valid{
		.vxe-body--column{
			&.col--valid-error{
				.vxe-cell--valid-error-hint{
					width          :320px;
					position       :absolute;
					bottom         :calc(100% + 4px);
					left           :50%;
					transform      :translateX(-50%);
					text-align     :center;
					pointer-events :none;
					z-index        :4;
					.vxe-cell--valid-error-msg{
						display          :inline-block;
						border-radius    :var(-vxe-border-radius);
						padding          :8px 12px;
						color            :#FFFFFF;
						background-color :#F56C6C;
						pointer-events   :auto;
					}
				}
			}
		}
		.vxe-body--row{
			&:first-child{
				.vxe-cell--valid-error-hint{
					bottom :auto;
					top    :calc(100% + 4px);
				}
			}
		}
		.vxe-body--column{
			&:first-child{
				.vxe-cell--valid-error-hint{
					left       :10px;
					transform  :translateX(0);
					text-align :left;
				}
			}
		}
	}
	/*单元格标记删除状态*/
	.vxe-body--row{
		&.row--pending{
			color           :var(--vxe-ui-table-validate-error-color);
			text-decoration :line-through;
			cursor          :no-drop;
			.vxe-body--column{
				position :relative;
				&:after{
					content       :'';
					position      :absolute;
					top           :50%;
					left          :0;
					width         :100%;
					height        :0;
					border-bottom :1px solid var(--vxe-ui-table-validate-error-color);
					z-index       :1;
				}
			}
		}
	}
	/*单元格编辑状态*/
	.vxe-body--row{
		&.row--new{
			& > .vxe-body--column{
				position :relative;
				&:before{
					content      :'';
					top          :calc(var(--vxe-ui-table-cell-dirty-width) * -1);
					left         :calc(var(--vxe-ui-table-cell-dirty-width) * -1);
					position     :absolute;
					border-width :var(--vxe-ui-table-cell-dirty-width);
					border-style :solid;
					border-color :transparent var(--vxe-ui-table-cell-dirty-insert-color) transparent transparent;
					transform    :rotate(45deg);
				}
			}
		}
	}
	.vxe-body--column{
		&.col--dirty{
			position :relative;
			&:before{
				content      :'';
				top          :calc(var(--vxe-ui-table-cell-dirty-width) * -1);
				left         :calc(var(--vxe-ui-table-cell-dirty-width) * -1);
				position     :absolute;
				border-width :var(--vxe-ui-table-cell-dirty-width);
				border-style :solid;
				border-color :transparent var(--vxe-ui-table-cell-dirty-update-color) transparent transparent;
				transform    :rotate(45deg);
			}
		}
	}
	/*可编辑*/
	&.vxe-editable{
		&.cell--highlight{
			.vxe-body--column{
				&.col--active{
					box-shadow :inset 0px 0px 0px 2px var(--vxe-ui-font-primary-color);
					&.col--valid-error{
						box-shadow :inset 0px 0px 0px 2px var(--vxe-ui-table-validate-error-color);
					}
					.vxe-cell{
						.vxe-default-input,
						.vxe-default-textarea{
							border  :0;
							padding :0;
						}
						.vxe-input{
							.vxe-input--inner{
								border       :0;
								padding-left :0;
							}
						}
					}
				}
			}
		}
		.vxe-body--column{
			padding :0;
			&.col--active{
				padding :0;
			}
		}
	}
}
/*valid error*/
div.vxe-table--tooltip-wrapper{
	&.vxe-table--valid-error{
		padding          :0;
		color            :var(--vxe-ui-table-validate-error-color);
		background-color :var(--vxe-ui-table-validate-error-background-color);
		&.old-cell-valid{
			padding          :8px 12px;
			background-color :#F56C6C;
			color            :#FFFFFF;
		}
	}
}
/*footer*/
.vxe-table--footer-wrapper{
	color      :var(--vxe-ui-table-footer-font-color);
	margin-top :-1px;
	&.body--wrapper{
		overflow-x :auto;
		outline    :0;
	}
}
.vxe-footer--column{
	&.col--ellipsis{
		& > .vxe-cell{
			display     :flex;
			align-items :center;
			.vxe-cell--item{
				overflow      :hidden;
				text-overflow :ellipsis;
				white-space   :nowrap;
			}
		}
	}
}